User Guide: For ADB Statistical Business Register by Asian Development Bank

User Guide: For ADB Statistical Business Register by Asian Development Bank

Author:Asian Development Bank [Asian Development Bank]
Language: eng
Format: epub


I.L. Job Scheduling Software

The system does not require any sophisticated scheduling software to run special operations. Regularly-scheduled tasks necessary to operate the system are written on the system’s code itself. The system was developed using the Laravel framework, which took care of a lot of logic that was necessary to set up scheduled tasks.

If necessary, the system can be configured to take over some of the administrator’s workload by scheduling automated backups and maintenance activities.

Aside from tasks executed at regular intervals, some user-initiated tasks can be triggered to execute in the background. When these tasks are triggered, each task and its pertinent details are stored in a database table, and form a queue of jobs. Special system processes called “queue workers” regularly query this table for any jobs to be executed. Tasks are then initiated on a first-in first-out (FIFO) basis, and each task is removed from the table once initiated.

This is particularly important for long-running tasks, such as data import, file processing, backup, and export. If not handled properly, tasks that take a few seconds to complete will make the system appear unresponsive, while even longer tasks (taking 30 seconds or more) will fail as they will exceed the system’s allotted time for a single page request. Separating these tasks from the normal flow of the user’s session allows the server to continue handling the user’s succeeding requests, while the requested task is delegated to be run by a queue worker in the background.

The web server software alone is unable to schedule tasks and manage job queues. For this, the server’s operating system is needed to invoke the tasks. Job queues, on the other hand, require one or several job workers that are on standby, waiting on the database for tasks to come in. It is necessary to ensure that at any point in time, there is at least one worker process running for each job queue.

Although lacking a graphical user interface, cron’s robust scheduling ensures that tasks are run on schedule for as long as the machine is operational.



Download



Copyright Disclaimer:
This site does not store any files on its server. We only index and link to content provided by other sites. Please contact the content providers to delete copyright contents if any and email us, we'll remove relevant links or contents immediately.